1. Field of the Invention
The present invention relates generally to a Multiple Input Multiple Output (MIMO) system, and in particular, to an Automatic Repeat reQuest (ARQ) apparatus and method.
2. Description of the Related Art
The next-generation wireless mobile communication system aims to provide a variety of data services beyond the existing voice oriented services. To this end, high-speed data communication technology needs to be further developed. Recent research has found that a Multiple Input Multiple Output (MIMO) system, which uses multiple antennas at transmitter and receiver respectively, achieves a remarkable increase in channel capacity, compared to a system using a single transmit antenna and a single receive antenna. To realize the theoretical channel capacity increase gain of the MIMO system, various schemes have been suggested, including a spatial multiplexing scheme and a space-time code scheme.
The spatial multiplexing scheme can increase system capacity, without requiring additional system bandwidth, by transmitting different data from different transmit antennas at the same time. A representative example of the spatial multiplexing scheme is Vertical-Bell Laboratory Layered Space Time (V-BLAST). The space-time coding scheme provides both diversity gain and coding gain by distributing and transmitting a data stream over time slots and an antenna with proper codes appended. A representative example of the space-time coding scheme is a space-time block coding scheme.
A 2×2 MIMO system can receive two data streams over one time slot by separately receiving the signals at a receiver from two transmit antennas. Also, the 2×2 MIMO system can obtain the diversity gain and lower the data error rate by distributing and transmitting two data streams over two antennas in two time slots using Alamouti's code.
FIG. 1 is a conceptual diagram of transmission and reception of a general 2×2 MIMO system.
In FIG. 1, 2×2 subchannels are established between a transmitter having two transmit antennas 101-1 and 101-2 and a receiver having two receive antennas 103-1 and 103-2. Xi(t) is a packet signal transmitted to a transmit antenna i at time t, and Yj(t) is a signal received at a receive antenna j at the time t. Vj(t) is white noise in the receive antenna j at the time t, and {circumflex over (X)}i(t) is a signal decoded from Xi(t) through decoders 105-1 and 105-2 at the time t. The subchannels each have a unique channel response characteristic hji. This characteristic is a channel coefficient from the transmit antenna i to the receive antenna j and is represented as a channel characteristic matrix H. In case of the 2×2 MIMO system, the channel characteristic matrix H is
      [                                        h            11                                                h            12                                                            h            21                                                h            22                                ]    ·      [                                        h            11                                                            h            21                                ]  can be represented as H1 and
      [                                        h            12                                                            h            22                                ]     can be represented as H2. The relational expression of the transmission and reception of the system is
                              Y          _                ⁡                  (          t          )                    =                        H          ⁢                                          ⁢                                    X              _                        ⁡                          (              t              )                                      +                              V            _                    ⁡                      (            t            )                                ,                  ⁢    where                                X          _                ⁡                  (          t          )                    ⁢                          ⁢              is        ⁢                                  [                                                                                                  X                    _                                    1                                ⁡                                  (                  t                  )                                                                                                                                              X                    _                                    2                                ⁡                                  (                  t                  )                                                                    ]              ,                            Y          _                ⁡                  (          t          )                    ⁢                          ⁢              is        ⁢                                  [                                                                                                  Y                    _                                    1                                ⁡                                  (                  t                  )                                                                                                                                              Y                    _                                    2                                ⁡                                  (                  t                  )                                                                    ]              ,          and      ⁢                          ⁢                        V          _                ⁡                  (          t          )                    ⁢                          ⁢                        is          ⁢                                          [                                                                                                                V                      _                                        1                                    ⁡                                      (                    t                    )                                                                                                                                                                  V                      _                                        2                                    ⁡                                      (                    t                    )                                                                                ]                .            
Automatic Repeat reQuest (ARQ) is a method for data retransmission from a transmitter when an error occurs in the received data in a communication system. Particularly, Hybrid ARQ (HARQ), which combines ARQ with encoding, combines the incorrectly received data stored in a previous time slot and the retransmitted data using a proper coding scheme. HARQ can reduce the number of data retransmissions and raise the data reception probability. Each packet is transmitted with a Cyclic Redundancy Check (CRC) code for the error detection.
The CRC appends extra error detection bits called a Frame Check Sequence (FCS) to the original data bits to increase the reliability of a data frame of a certain size. The FCS generation and the error detection are carried out using one polynomial circuit and is frequently used thanks to its easy implementation, good error detection, and low overhead. For instance, after passing through a polynomial circuit p(x)=x5+x4+x2+1 to acquire an FCS of message bits 1010001101 in a frame, the FCS 1110 is generated. By appending the generated FCS to the original message bits, 1010000110101110 can be transmitted over the channel. Upon receiving the message bits, error detection is performed using the same p(x) polynomial circuit.
In the conventional ARQ method, which is for a Single Input Single Output (SISO) system, the receiver determines the error based on the error detection bits of the received packet. When an error occurs, the receiver can send an Acknowledge/Negative Acknowledge (ACK/NACK) signal to the transmitter over the reverse channel. That is, the receiver sends an ACK signal when the error is not detected, and sends a NACK signal when the error is detected. Accordingly, the transmitter sends new packets when receiving the ACK signal and retransmits the packet when receiving the NACK signal.
When the ARQ method of the existing SISO system is applied to the MIMO system, the number of the transmission paths increases and the number of operation schemes also increases. Also, two or more data streams can be transmitted at the same time, and the reception error may be detected from both or either of the two data transmissions. Therefore, to apply the ARQ method of the existing SISO system to the MIMO system, a method for minimizing the retransmitted data error rate and decreasing the number of retransmissions using an adequate ARQ method is needed.